Aller au contenu principal

Console

L'hyperviseur contient des outils pour crée des consoles personnalisé et changer leurs fonctionnements.

Comment utiliser la console ?

Vous pouvez appeler l'object Console en static.

la méthode print permet de print sur la console actuel.

Console.print("Message que je veux print dans la console.");

Vous pouvez meme rajouter des couleurs !

Console.print(Colors.CYAN + "Message que je veux print dans la "+ Colors.GREEN + "console.");

Vous pouvez créer des consoles virtuel comme dans l'exemple en dessous:

Créez une classe pour votre console et mettez dans le constructeur l'objet Console

CustomConsole custom;

@Override
public void start() {
// code en haut


Console.load("c:custom");
customConsole = new CustomConsole(Console.getConsole("c:custom"));
}
Console console;
public SpigetConsole(Console console){
this.console = console;
console.writing = "- "; //Ici on peut modifier le message "DreamNetworkV2@user" par autre chose si vous le souhaiter

//Mettre en place ce killListener est important, il permet de revenir automatiquement sur la console par défaut.
console.setKillListener(new Console.ConsoleKillListener() {
@Override
public void onKill(LineReader reader) {
Console.setActualConsole(ConsolePath.Main.DEFAULT);
Console nConsole = Console.getConsole(ConsolePath.Main.DEFAULT);
nConsole.run();
}
});


}

Maintenant que tout est pret vous pouvez appeler la methode setConsoleAction depuis l'objet de la console.

console.setConsoleAction(new Console.IConsole() {
@Override
public void listener(String[] args) {
// QUAND ON ECRIT DANS LA CONSOLE
}

@Override
public void consoleChange() {
// QUAND LA CONSOLE S'OUVRE
}
});

YOUPI ! Vous avez crée la console mais vous ne savez peut être pas comment on fait pour que l'utilisateur puisse y rentrer ?

vous devez faire simplement Console.setActualConsole("LeNomDeLaConsole"); donc dans le cas de l'exemple Console.setActualConsole("c:custom");

BONUS

Chaque console dispose d'un historique, vous pouvez l'utiliser a votre guise, vous pouvez print dans la console même en étant en dehors et cela s'enregistre dans son historique (en faisant Console.getConsole("NomDeLaConsole").print("Message ici");!